home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
ShareWare OnLine 2
/
ShareWare OnLine Volume 2 (CMS Software)(1993).iso
/
os2
/
remin301.zip
/
REMIN300.ZIP
/
GLOBALS.H
< prev
next >
Wrap
C/C++ Source or Header
|
1992-11-10
|
4KB
|
112 lines
/***************************************************************/
/* */
/* GLOBALS.H */
/* */
/* This function contains declarations of global variables. */
/* They are instantiated in main.c by defining */
/* MK_GLOBALS. Also contains useful macro definitions. */
/* */
/* This file is part of REMIND. */
/* Copyright (C) 1991 by David F. Skoll. */
/* */
/***************************************************************/
#ifdef MK_GLOBALS
#undef EXTERN
#define EXTERN
#define INIT(var, val) var = val
#else
#undef EXTERN
#define EXTERN extern
#define INIT(var, val) var
#endif
#define DaysInYear(y) (((y) % 4) ? 365 : ((!((y) % 100) && ((y) % 400)) ? 365 : 366 ))
#define IsLeapYear(y) (((y) % 4) ? 0 : ((!((y) % 100) && ((y) % 400)) ? 0 : 1 ))
#define DaysInMonth(m, y) ((m) != 1 ? MonthDays[m] : 28 + IsLeapYear(y))
EXTERN int JulianToday;
EXTERN int RealToday;
EXTERN int CurDay;
EXTERN int CurMon;
EXTERN int CurYear;
EXTERN int FirstYear;
EXTERN int LineNo;
EXTERN char FreshLine;
EXTERN char LineBuffer[LINELEN];
EXTERN char SubstBuffer[LINELEN];
EXTERN char TokBuffer[TOKSIZE+1];
EXTERN INIT( char ShowAllErrors, 0);
EXTERN INIT( int DebugFlag, 0);
EXTERN INIT( char DoCalendar, 0);
EXTERN INIT( char DoSimpleCalendar, 0);
EXTERN INIT( int CalWidth, 80);
EXTERN INIT( int CalWeeks, 0);
EXTERN INIT( int CalMonths, 0);
EXTERN INIT( char Hush, 0);
EXTERN INIT( char NextMode, 0);
EXTERN INIT( char InfiniteDelta, 0);
EXTERN INIT( char RunDisabled, 0);
EXTERN INIT( char IgnoreOnce, 0);
EXTERN INIT( char Banner[LINELEN], "Reminders for %w, %d%s %m, %y%o:");
EXTERN char *InitialFile;
EXTERN int FileAccessDate;
#ifdef HAVE_QUEUED
EXTERN INIT( char DontFork, 0);
EXTERN INIT( char DontQueue, 0);
EXTERN INIT( int NumQueued, 0);
EXTERN INIT( char DontIssueAts, 0);
EXTERN INIT( char Daemon, 0);
#endif
EXTERN INIT( int ScFormat, SC_AMPM);
EXTERN INIT( int MaxSatIter, 150);
EXTERN INIT( char *FileName, NULL);
EXTERN FILE *ErrFp;
EXTERN INIT( int JulFirst, -1);
EXTERN INIT( int NumIfs, 0);
EXTERN INIT( unsigned int IfFlags, 0);
EXTERN INIT( int LastTriggerDate, 0);
EXTERN INIT( char LastTrigValid, 0);
EXTERN INIT( int LastTriggerTime, 0);
EXTERN INIT( char ShouldCache, 0);
EXTERN char *CurLine;
EXTERN INIT( int NumTriggered, 0);
EXTERN int ArgC;
EXTERN char **ArgV;
/* List of months */
EXTERN char *MonthName[]
#ifdef MK_GLOBALS
= {"January", "February", "March", "April", "May", "June",
"July", "August", "September", "October", "November", "December" }
#endif
;
EXTERN char *DayName[]
#ifdef MK_GLOBALS
= {"Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday",
"Sunday"}
#endif
;
EXTERN int MonthDays[]
#ifdef MK_GLOBALS
= {31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31}
#endif
;
/* The first day of each month expressed as number of days after Jan 1.
Second row is for leap years. */
EXTERN int MonthIndex[2][12]
#ifdef MK_GLOBALS
= {
{ 0, 31, 59, 90, 120, 151, 181, 212, 243, 273, 304, 334 },
{ 0, 31, 60, 91, 121, 152, 182, 213, 244, 274, 305, 335 }
}
#endif
;